The realm of semiconductor devices encompasses many types of integrated circuits. Programmable logic devices (“PLDs”) are a well-known type of integrated circuit that can be programmed to perform specified logic functions. One type of PLD, the field programmable gate array (“FPGA”), typically includes an array of programmable tiles. These programmable tiles can include, for example, input/output blocks (“IOBs”), configurable logic blocks (“CLBs”), dedicated random access memory blocks (“BRAMs”), multipliers, digital signal processing blocks (“DSPs”), processors, clock managers, delay lock loops (“DLLs”), and so forth. As used herein, “include” and “including” mean including without limitation.
Each programmable tile typically includes both programmable interconnect and programmable logic. The programmable interconnect typically includes a large number of interconnect lines of varying lengths interconnected by programmable interconnect points (“PIPs”). The programmable logic implements the logic of a user design using programmable elements that can include, for example, function generators, registers, arithmetic logic, and so forth.
The programmable interconnect and programmable logic are typically programmed by loading a stream of configuration data into internal configuration memory cells that define how the programmable elements are configured. The configuration data can be read from memory (e.g., from an external PROM) or written into the FPGA by an external device. The collective states of the individual memory cells then determine the function of the FPGA.
As lithographies of advanced semiconductors, such as FPGAs, get smaller, on the order of 65 nm and smaller, second order or layout proximity effects have a greater impact on device behavior. Some of these second order effects, such as Length of Diffusion (“LOD”) and Well Proximity Effect (“WPE”) have been incorporated into compact models, which can be simulated using any SPICE simulators, such as HSPICE and SPECTRE for example. However, heretofore all commercially available compact models including SPICE models BISM4.6 and PSP, among others, have not provided modeling of some previously unidentified second order effects. Model accuracy is increasingly hindered by the lack of these previously unidentified second order effects.